package ipc;

import java.util.ArrayList;

import rddl.RDDL.PVAR_INST_DEF;

public class IPCAction {
	
	public ArrayList<PVAR_INST_DEF> actions_;

	public IPCAction(){
		actions_ = new ArrayList<PVAR_INST_DEF>();
	}
	
	public IPCAction(ArrayList<PVAR_INST_DEF> actions){
		actions_ = new ArrayList<PVAR_INST_DEF>();
		actions_.clear();
		for(PVAR_INST_DEF a : actions){
			actions_.add(a);
		}
	}

	public IPCAction(PVAR_INST_DEF pvar_inst_def) {
		actions_ = new ArrayList<PVAR_INST_DEF>();
		actions_.clear();
		actions_.add(pvar_inst_def);
	}
	
	public String toString(){
		return actions_.toString();
	}

	public int hashCode(){
		return actions_.hashCode();
	}
	
	public boolean isComposite(){
		return actions_.size()>1;
	}
	
	@Override
	public boolean equals(Object obj) {
		if( obj instanceof IPCAction)
			return this.hashCode()==obj.hashCode();
		return false;
	}
	
}
